#[macro_export]
macro_rules! hashmap {
    ($($x: expr => $y: expr,)*) => {
        {
            let mut m = ::std::collections::HashMap::new();
            $(
                m.insert($x, $y);
            )*
            m
        }
    };
    ($($x: expr => $y: expr), *) => {
        crate::hashmap!($($x => $y,)*)
    };
}